<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.16"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>DesignPattern: C:/96_project/DesignPattern/04_AbstractFactory/groupinc/DESIGNPATTERN_AbstractFactory.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="DesignPattern.png"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">DesignPattern
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.16 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_b09d1472065b57c6888e21b91bbadcd2.html">04_AbstractFactory</a></li><li class="navelem"><a class="el" href="dir_28eab65fc9ef9a2c7306e80df1d90e30.html">groupinc</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">DESIGNPATTERN_AbstractFactory.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160; </div>
<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#ifndef CXX_DESIGNPATTERN_ABSTRACTFACTORY_H</span></div>
<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#define CXX_DESIGNPATTERN_ABSTRACTFACTORY_H</span></div>
<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_product_def_8h.html">ProductDef.h</a>&quot;</span></div>
<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="keyword">class </span><a class="code" href="class_mouse.html">Mouse</a>;</div>
<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="keyword">class </span><a class="code" href="class_keyboard.html">Keyboard</a>;</div>
<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="keyword">class </span><a class="code" href="class_monitor.html">Monitor</a>;</div>
<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="keyword">class </span><a class="code" href="class_host.html">Host</a>;</div>
<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="keyword">class </span><a class="code" href="class_abstract_computer.html">AbstractComputer</a>;</div>
<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
<div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="class_abstract_factory.html">   20</a></span>&#160;<span class="keyword">class </span><a class="code" href="class_abstract_factory.html">AbstractFactory</a></div>
<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;{</div>
<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_abstract_factory.html#a0ce427e8246baff926f0945d370bb419">~AbstractFactory</a>() = 0;</div>
<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;    <a class="code" href="class_abstract_computer.html">AbstractComputer</a>* <a class="code" href="class_abstract_factory.html#abdc7e42931561b9e59629a4bd0026c68">CreateDesktopComputerNormal</a>();</div>
<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160; </div>
<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160; </div>
<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_mouse.html">Mouse</a>* <a class="code" href="class_abstract_factory.html#ab988a1ff535f4c2f0ea6bd3cfe418745">CreateMouse</a>() = 0;</div>
<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160; </div>
<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_keyboard.html">Keyboard</a>* <a class="code" href="class_abstract_factory.html#aa10a0fd3ef457c7b9397c0a2001d86d4">CreateKeyboard</a>() = 0;</div>
<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160; </div>
<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_monitor.html">Monitor</a>* <a class="code" href="class_abstract_factory.html#ab7853111b7db910e0a8953aa062bdf2c">CreateMonitor</a>() = 0;</div>
<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160; </div>
<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_host.html">Host</a>* <a class="code" href="class_abstract_factory.html#a5f87d3ac2fdef80bd009e26b7130e5fb">CreateHost</a>() = 0;</div>
<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160; </div>
<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    <a class="code" href="_product_def_8h.html#ac73ca32847343c10f73f1fa0b7b6ae3c">MANUFACTURER_TYPE</a> <a class="code" href="class_abstract_factory.html#aa3d5b31d31c868bc633c30218e03d856">GetManufacturer</a>();</div>
<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;    <a class="code" href="class_abstract_factory.html#a2fbbcbd545174c97cb300b82856d6171">AbstractFactory</a>(<a class="code" href="_product_def_8h.html#ac73ca32847343c10f73f1fa0b7b6ae3c">MANUFACTURER_TYPE</a> eManufacturer);</div>
<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160; </div>
<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;    <a class="code" href="_my_self_def_8h.html#a7927e087749615dae3114cc27b91c86d">VOID</a> <a class="code" href="class_abstract_factory.html#aa6b4a6965504d36aeb31ca9980649e09">SetManufacturer</a>(<a class="code" href="_product_def_8h.html#ac73ca32847343c10f73f1fa0b7b6ae3c">MANUFACTURER_TYPE</a> eManufacturer);</div>
<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;    <a class="code" href="class_abstract_factory.html#a2fbbcbd545174c97cb300b82856d6171">AbstractFactory</a>();</div>
<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160; </div>
<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;    <a class="code" href="class_abstract_factory.html#a2fbbcbd545174c97cb300b82856d6171">AbstractFactory</a>(<span class="keyword">const</span> <a class="code" href="class_abstract_factory.html">AbstractFactory</a>&amp; cAbstractFactory);</div>
<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160; </div>
<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;    <a class="code" href="class_abstract_factory.html">AbstractFactory</a>&amp; <a class="code" href="class_abstract_factory.html#aed400af527dfb1fd42eb320f21aae14d">operator=</a>(<span class="keyword">const</span> <a class="code" href="class_abstract_factory.html">AbstractFactory</a>&amp; cAbstractFactory);</div>
<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160; </div>
<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="class_abstract_factory.html#af8b5aab716692ea2c55c1fd7dff74b05">  128</a></span>&#160;    <a class="code" href="_product_def_8h.html#ac73ca32847343c10f73f1fa0b7b6ae3c">MANUFACTURER_TYPE</a> <a class="code" href="class_abstract_factory.html#af8b5aab716692ea2c55c1fd7dff74b05">m_eManufacturer</a>;</div>
<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;};</div>
<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160; </div>
<div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="class_d_e_l_l_factory.html">  131</a></span>&#160;<span class="keyword">class </span><a class="code" href="class_d_e_l_l_factory.html">DELLFactory</a> : <span class="keyword">public</span> <a class="code" href="class_abstract_factory.html">AbstractFactory</a></div>
<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;{</div>
<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_d_e_l_l_factory.html#ac0df7222cef55d944d019094e7ef1f0f">~DELLFactory</a>();</div>
<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160; </div>
<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;    <span class="keyword">static</span> <a class="code" href="class_abstract_factory.html">AbstractFactory</a>* <a class="code" href="class_d_e_l_l_factory.html#a25132ee0ddcaeb3fd8d279e2d4a1b9c4">Instance</a>();</div>
<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;    </div>
<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;    <span class="keyword">static</span> <a class="code" href="_my_self_def_8h.html#a7927e087749615dae3114cc27b91c86d">VOID</a> <a class="code" href="class_d_e_l_l_factory.html#afe2de50f77401b64afc67677de7f6b4d">Destroy</a>();</div>
<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160; </div>
<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_mouse.html">Mouse</a>* <a class="code" href="class_d_e_l_l_factory.html#a72e77d1aaa0d225e28075d43dde267f1">CreateMouse</a>();</div>
<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160; </div>
<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_keyboard.html">Keyboard</a>* <a class="code" href="class_d_e_l_l_factory.html#af8a559cf419e20c08838bb2a9f982f2d">CreateKeyboard</a>();</div>
<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160; </div>
<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_monitor.html">Monitor</a>* <a class="code" href="class_d_e_l_l_factory.html#ac07df15cbb5cbe9ca83fb562dd8990aa">CreateMonitor</a>();</div>
<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160; </div>
<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_host.html">Host</a>* <a class="code" href="class_d_e_l_l_factory.html#a022482e7d119e327ae6df91e6dbd8ed9">CreateHost</a>();</div>
<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160; </div>
<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;    <a class="code" href="class_d_e_l_l_factory.html#ac510d06fe6719e6562f3b93cf735fcb0">DELLFactory</a>();</div>
<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160; </div>
<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;    <a class="code" href="class_d_e_l_l_factory.html#ac510d06fe6719e6562f3b93cf735fcb0">DELLFactory</a>(<span class="keyword">const</span> <a class="code" href="class_d_e_l_l_factory.html">DELLFactory</a>&amp; cDELLFactory);</div>
<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160; </div>
<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;    <a class="code" href="class_d_e_l_l_factory.html">DELLFactory</a>&amp; <a class="code" href="class_d_e_l_l_factory.html#a5fd7565cc00d0f42efcc908147a53af1">operator=</a>(<span class="keyword">const</span> <a class="code" href="class_d_e_l_l_factory.html">DELLFactory</a>&amp; cDELLFactory);</div>
<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160; </div>
<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00225"></a><span class="lineno"><a class="line" href="class_d_e_l_l_factory.html#ad1db42662c007f76f40b6a8ccfb644d7">  225</a></span>&#160;    <span class="keyword">static</span> <a class="code" href="class_d_e_l_l_factory.html">DELLFactory</a>* <a class="code" href="class_d_e_l_l_factory.html#ad1db42662c007f76f40b6a8ccfb644d7">m_pInstance</a>;</div>
<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;};</div>
<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160; </div>
<div class="line"><a name="l00228"></a><span class="lineno"><a class="line" href="class_a_s_u_s_factory.html">  228</a></span>&#160;<span class="keyword">class </span><a class="code" href="class_a_s_u_s_factory.html">ASUSFactory</a> : <span class="keyword">public</span> <a class="code" href="class_abstract_factory.html">AbstractFactory</a></div>
<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;{</div>
<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_a_s_u_s_factory.html#ae86f494f4568dd22968f010dfe9e210f">~ASUSFactory</a>();</div>
<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160; </div>
<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;    <span class="keyword">static</span> <a class="code" href="class_abstract_factory.html">AbstractFactory</a>* <a class="code" href="class_a_s_u_s_factory.html#a40d4d2d557b0cf3b70ada2cd2276266d">Instance</a>();</div>
<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;    </div>
<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;    <span class="keyword">static</span> <a class="code" href="_my_self_def_8h.html#a7927e087749615dae3114cc27b91c86d">VOID</a> <a class="code" href="class_a_s_u_s_factory.html#aa9b458fe467d5c7dee132240b20e311a">Destroy</a>();</div>
<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160; </div>
<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_mouse.html">Mouse</a>* <a class="code" href="class_a_s_u_s_factory.html#a84beb96edd3ce08bc17adfa1947e0c2e">CreateMouse</a>();</div>
<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160; </div>
<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_keyboard.html">Keyboard</a>* <a class="code" href="class_a_s_u_s_factory.html#a5be756a45a3c95d9cd04675835158808">CreateKeyboard</a>();</div>
<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160; </div>
<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_monitor.html">Monitor</a>* <a class="code" href="class_a_s_u_s_factory.html#ab52cf7f9d7018605315572dbdba85664">CreateMonitor</a>();</div>
<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160; </div>
<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_host.html">Host</a>* <a class="code" href="class_a_s_u_s_factory.html#a3afbba7db45485c3fc34d7ea72708451">CreateHost</a>();</div>
<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;    <a class="code" href="class_a_s_u_s_factory.html#a1003f1376fc12d39500abcefea96b112">ASUSFactory</a>();</div>
<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160; </div>
<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;    <a class="code" href="class_a_s_u_s_factory.html#a1003f1376fc12d39500abcefea96b112">ASUSFactory</a>(<span class="keyword">const</span> <a class="code" href="class_a_s_u_s_factory.html">ASUSFactory</a>&amp; cASUSFactory);</div>
<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160; </div>
<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;    <a class="code" href="class_a_s_u_s_factory.html">ASUSFactory</a>&amp; <a class="code" href="class_a_s_u_s_factory.html#aa42cc378e84fcad9b2753f970d8c4982">operator=</a>(<span class="keyword">const</span> <a class="code" href="class_a_s_u_s_factory.html">ASUSFactory</a>&amp; cASUSFactory);</div>
<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160; </div>
<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00321"></a><span class="lineno"><a class="line" href="class_a_s_u_s_factory.html#aa42c2225f44f799055b20c9ab6096b1d">  321</a></span>&#160;    <span class="keyword">static</span> <a class="code" href="class_a_s_u_s_factory.html">ASUSFactory</a>* <a class="code" href="class_a_s_u_s_factory.html#aa42c2225f44f799055b20c9ab6096b1d">m_pInstance</a>;</div>
<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;};</div>
<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160; </div>
<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160; </div>
<div class="line"><a name="l00325"></a><span class="lineno"><a class="line" href="class_h_p_factory.html">  325</a></span>&#160;<span class="keyword">class </span><a class="code" href="class_h_p_factory.html">HPFactory</a> : <span class="keyword">public</span> <a class="code" href="class_abstract_factory.html">AbstractFactory</a></div>
<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;{</div>
<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_h_p_factory.html#a39f9cb8ec3ad9d00fdc077db09cbc180">~HPFactory</a>();</div>
<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160; </div>
<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;    <span class="keyword">static</span> <a class="code" href="class_abstract_factory.html">AbstractFactory</a>* <a class="code" href="class_h_p_factory.html#a09f6bfd2f4779a273bf3fb9246e31874">Instance</a>();</div>
<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;    </div>
<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;    <span class="keyword">static</span> <a class="code" href="_my_self_def_8h.html#a7927e087749615dae3114cc27b91c86d">VOID</a> <a class="code" href="class_h_p_factory.html#a80fbd39a723cf8a0fde9230a77d61bda">Destroy</a>();</div>
<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160; </div>
<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_mouse.html">Mouse</a>* <a class="code" href="class_h_p_factory.html#a28d0bfdbd9be99e66fc0f7f7f5b20d49">CreateMouse</a>();</div>
<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160; </div>
<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_keyboard.html">Keyboard</a>* <a class="code" href="class_h_p_factory.html#aef72175d13cb0929213e615637320913">CreateKeyboard</a>();</div>
<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160; </div>
<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_monitor.html">Monitor</a>* <a class="code" href="class_h_p_factory.html#a3222fa23da177618b79d7e2762ac0ee6">CreateMonitor</a>();</div>
<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160; </div>
<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_host.html">Host</a>* <a class="code" href="class_h_p_factory.html#ab9ae1470b9ed1fac365b75d4826abd0d">CreateHost</a>();</div>
<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;    <a class="code" href="class_h_p_factory.html#ab8f390cb3d8d2053bbed943f27726efc">HPFactory</a>();</div>
<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160; </div>
<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;    <a class="code" href="class_h_p_factory.html#ab8f390cb3d8d2053bbed943f27726efc">HPFactory</a>(<span class="keyword">const</span> <a class="code" href="class_h_p_factory.html">HPFactory</a>&amp; cHPFactory);</div>
<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160; </div>
<div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;    <a class="code" href="class_h_p_factory.html">HPFactory</a>&amp; <a class="code" href="class_h_p_factory.html#abe96d21b7447058a0c86063376c960d6">operator=</a>(<span class="keyword">const</span> <a class="code" href="class_h_p_factory.html">HPFactory</a>&amp; cHPFactory);</div>
<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160; </div>
<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00418"></a><span class="lineno"><a class="line" href="class_h_p_factory.html#ae83758e3b368372d4bf0f81e6b7aa0f3">  418</a></span>&#160;    <span class="keyword">static</span> <a class="code" href="class_h_p_factory.html">HPFactory</a>* <a class="code" href="class_h_p_factory.html#ae83758e3b368372d4bf0f81e6b7aa0f3">m_pInstance</a>;</div>
<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;};</div>
<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160; </div>
<div class="line"><a name="l00421"></a><span class="lineno"><a class="line" href="class_m_i_x_factory.html">  421</a></span>&#160;<span class="keyword">class </span><a class="code" href="class_m_i_x_factory.html">MIXFactory</a> : <span class="keyword">public</span> <a class="code" href="class_abstract_factory.html">AbstractFactory</a></div>
<div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;{</div>
<div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_m_i_x_factory.html#a29e3bbdac8fd03a6edf21d2490b976d6">~MIXFactory</a>();</div>
<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160; </div>
<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;    <span class="keyword">static</span> <a class="code" href="class_abstract_factory.html">AbstractFactory</a>* <a class="code" href="class_m_i_x_factory.html#a86c596854a43d70a9e2aa1a8d2bd3fc0">Instance</a>();</div>
<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160; </div>
<div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;    <span class="keyword">static</span> <a class="code" href="_my_self_def_8h.html#a7927e087749615dae3114cc27b91c86d">VOID</a> <a class="code" href="class_m_i_x_factory.html#a7287959244040d5487864a6f3b128a0c">Destroy</a>();</div>
<div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160; </div>
<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_mouse.html">Mouse</a>* <a class="code" href="class_m_i_x_factory.html#af1809112b68306569cb752532faebfb4">CreateMouse</a>();</div>
<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160; </div>
<div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_keyboard.html">Keyboard</a>* <a class="code" href="class_m_i_x_factory.html#a635c8bd61ec834e93bece151a160cd1f">CreateKeyboard</a>();</div>
<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160; </div>
<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_monitor.html">Monitor</a>* <a class="code" href="class_m_i_x_factory.html#a50b1452a9ef800994ce47b2d43759698">CreateMonitor</a>();</div>
<div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160; </div>
<div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="class_host.html">Host</a>* <a class="code" href="class_m_i_x_factory.html#a188a3a9028be47d3ab4a79a3e08a296c">CreateHost</a>();</div>
<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;    <a class="code" href="class_m_i_x_factory.html#ac12eb26d5bd2e9254ce040ca01b8689f">MIXFactory</a>();</div>
<div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160; </div>
<div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;    <a class="code" href="class_m_i_x_factory.html#ac12eb26d5bd2e9254ce040ca01b8689f">MIXFactory</a>(<span class="keyword">const</span> <a class="code" href="class_m_i_x_factory.html">MIXFactory</a>&amp; cMIXFactory);</div>
<div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160; </div>
<div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;    <a class="code" href="class_m_i_x_factory.html">MIXFactory</a>&amp; <a class="code" href="class_m_i_x_factory.html#aff955cc8bcaa42a81409659d2714b91b">operator=</a>(<span class="keyword">const</span> <a class="code" href="class_m_i_x_factory.html">MIXFactory</a>&amp; cMIXFactory);</div>
<div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160; </div>
<div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00514"></a><span class="lineno"><a class="line" href="class_m_i_x_factory.html#af4d651d18efb2393b1f285b8fb853953">  514</a></span>&#160;    <span class="keyword">static</span> <a class="code" href="class_m_i_x_factory.html">MIXFactory</a>* <a class="code" href="class_m_i_x_factory.html#af4d651d18efb2393b1f285b8fb853953">m_pInstance</a>;</div>
<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;};</div>
<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160; </div>
<div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;<span class="preprocessor">#endif  </span><span class="comment">/* &gt;&gt;CXX_DESIGNPATTERN_ABSTRACTFACTORY_H&lt;&lt; */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;<span class="preprocessor"></span><span class="comment">/* EOF */</span><span class="preprocessor"></span></div>
</div><!-- fragment --></div><!-- contents -->
<div class="ttc" id="aclass_abstract_factory_html_aa3d5b31d31c868bc633c30218e03d856"><div class="ttname"><a href="class_abstract_factory.html#aa3d5b31d31c868bc633c30218e03d856">AbstractFactory::GetManufacturer</a></div><div class="ttdeci">MANUFACTURER_TYPE GetManufacturer()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00152">DESIGNPATTERN_AbstractFactory.cpp:152</a></div></div>
<div class="ttc" id="aclass_h_p_factory_html_aef72175d13cb0929213e615637320913"><div class="ttname"><a href="class_h_p_factory.html#aef72175d13cb0929213e615637320913">HPFactory::CreateKeyboard</a></div><div class="ttdeci">virtual Keyboard * CreateKeyboard()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00474">DESIGNPATTERN_AbstractFactory.cpp:474</a></div></div>
<div class="ttc" id="aclass_h_p_factory_html_ae83758e3b368372d4bf0f81e6b7aa0f3"><div class="ttname"><a href="class_h_p_factory.html#ae83758e3b368372d4bf0f81e6b7aa0f3">HPFactory::m_pInstance</a></div><div class="ttdeci">static HPFactory * m_pInstance</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8h_source.html#l00418">DESIGNPATTERN_AbstractFactory.h:418</a></div></div>
<div class="ttc" id="aclass_h_p_factory_html_a3222fa23da177618b79d7e2762ac0ee6"><div class="ttname"><a href="class_h_p_factory.html#a3222fa23da177618b79d7e2762ac0ee6">HPFactory::CreateMonitor</a></div><div class="ttdeci">virtual Monitor * CreateMonitor()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00488">DESIGNPATTERN_AbstractFactory.cpp:488</a></div></div>
<div class="ttc" id="aclass_h_p_factory_html_a09f6bfd2f4779a273bf3fb9246e31874"><div class="ttname"><a href="class_h_p_factory.html#a09f6bfd2f4779a273bf3fb9246e31874">HPFactory::Instance</a></div><div class="ttdeci">static AbstractFactory * Instance()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00425">DESIGNPATTERN_AbstractFactory.cpp:425</a></div></div>
<div class="ttc" id="aclass_mouse_html"><div class="ttname"><a href="class_mouse.html">Mouse</a></div><div class="ttdef"><b>Definition:</b> <a href="_mouse_8h_source.html#l00012">Mouse.h:12</a></div></div>
<div class="ttc" id="aclass_a_s_u_s_factory_html_aa9b458fe467d5c7dee132240b20e311a"><div class="ttname"><a href="class_a_s_u_s_factory.html#aa9b458fe467d5c7dee132240b20e311a">ASUSFactory::Destroy</a></div><div class="ttdeci">static VOID Destroy()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00326">DESIGNPATTERN_AbstractFactory.cpp:326</a></div></div>
<div class="ttc" id="aclass_m_i_x_factory_html_aff955cc8bcaa42a81409659d2714b91b"><div class="ttname"><a href="class_m_i_x_factory.html#aff955cc8bcaa42a81409659d2714b91b">MIXFactory::operator=</a></div><div class="ttdeci">MIXFactory &amp; operator=(const MIXFactory &amp;cMIXFactory)</div></div>
<div class="ttc" id="aclass_abstract_factory_html_abdc7e42931561b9e59629a4bd0026c68"><div class="ttname"><a href="class_abstract_factory.html#abdc7e42931561b9e59629a4bd0026c68">AbstractFactory::CreateDesktopComputerNormal</a></div><div class="ttdeci">AbstractComputer * CreateDesktopComputerNormal()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00066">DESIGNPATTERN_AbstractFactory.cpp:66</a></div></div>
<div class="ttc" id="aclass_m_i_x_factory_html_a86c596854a43d70a9e2aa1a8d2bd3fc0"><div class="ttname"><a href="class_m_i_x_factory.html#a86c596854a43d70a9e2aa1a8d2bd3fc0">MIXFactory::Instance</a></div><div class="ttdeci">static AbstractFactory * Instance()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00540">DESIGNPATTERN_AbstractFactory.cpp:540</a></div></div>
<div class="ttc" id="aclass_abstract_computer_html"><div class="ttname"><a href="class_abstract_computer.html">AbstractComputer</a></div><div class="ttdef"><b>Definition:</b> <a href="_computer_8h_source.html#l00035">Computer.h:35</a></div></div>
<div class="ttc" id="aclass_abstract_factory_html_aa6b4a6965504d36aeb31ca9980649e09"><div class="ttname"><a href="class_abstract_factory.html#aa6b4a6965504d36aeb31ca9980649e09">AbstractFactory::SetManufacturer</a></div><div class="ttdeci">VOID SetManufacturer(MANUFACTURER_TYPE eManufacturer)</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00139">DESIGNPATTERN_AbstractFactory.cpp:139</a></div></div>
<div class="ttc" id="aclass_d_e_l_l_factory_html_afe2de50f77401b64afc67677de7f6b4d"><div class="ttname"><a href="class_d_e_l_l_factory.html#afe2de50f77401b64afc67677de7f6b4d">DELLFactory::Destroy</a></div><div class="ttdeci">static VOID Destroy()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00209">DESIGNPATTERN_AbstractFactory.cpp:209</a></div></div>
<div class="ttc" id="aclass_a_s_u_s_factory_html_ae86f494f4568dd22968f010dfe9e210f"><div class="ttname"><a href="class_a_s_u_s_factory.html#ae86f494f4568dd22968f010dfe9e210f">ASUSFactory::~ASUSFactory</a></div><div class="ttdeci">virtual ~ASUSFactory()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00295">DESIGNPATTERN_AbstractFactory.cpp:295</a></div></div>
<div class="ttc" id="aclass_m_i_x_factory_html_a188a3a9028be47d3ab4a79a3e08a296c"><div class="ttname"><a href="class_m_i_x_factory.html#a188a3a9028be47d3ab4a79a3e08a296c">MIXFactory::CreateHost</a></div><div class="ttdeci">virtual Host * CreateHost()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00617">DESIGNPATTERN_AbstractFactory.cpp:617</a></div></div>
<div class="ttc" id="aclass_abstract_factory_html_ab7853111b7db910e0a8953aa062bdf2c"><div class="ttname"><a href="class_abstract_factory.html#ab7853111b7db910e0a8953aa062bdf2c">AbstractFactory::CreateMonitor</a></div><div class="ttdeci">virtual Monitor * CreateMonitor()=0</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00110">DESIGNPATTERN_AbstractFactory.cpp:110</a></div></div>
<div class="ttc" id="a_product_def_8h_html_ac73ca32847343c10f73f1fa0b7b6ae3c"><div class="ttname"><a href="_product_def_8h.html#ac73ca32847343c10f73f1fa0b7b6ae3c">MANUFACTURER_TYPE</a></div><div class="ttdeci">MANUFACTURER_TYPE</div><div class="ttdef"><b>Definition:</b> <a href="_product_def_8h_source.html#l00028">ProductDef.h:28</a></div></div>
<div class="ttc" id="aclass_h_p_factory_html_ab8f390cb3d8d2053bbed943f27726efc"><div class="ttname"><a href="class_h_p_factory.html#ab8f390cb3d8d2053bbed943f27726efc">HPFactory::HPFactory</a></div><div class="ttdeci">HPFactory()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00400">DESIGNPATTERN_AbstractFactory.cpp:400</a></div></div>
<div class="ttc" id="aclass_d_e_l_l_factory_html_a25132ee0ddcaeb3fd8d279e2d4a1b9c4"><div class="ttname"><a href="class_d_e_l_l_factory.html#a25132ee0ddcaeb3fd8d279e2d4a1b9c4">DELLFactory::Instance</a></div><div class="ttdeci">static AbstractFactory * Instance()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00191">DESIGNPATTERN_AbstractFactory.cpp:191</a></div></div>
<div class="ttc" id="aclass_m_i_x_factory_html_af4d651d18efb2393b1f285b8fb853953"><div class="ttname"><a href="class_m_i_x_factory.html#af4d651d18efb2393b1f285b8fb853953">MIXFactory::m_pInstance</a></div><div class="ttdeci">static MIXFactory * m_pInstance</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8h_source.html#l00514">DESIGNPATTERN_AbstractFactory.h:514</a></div></div>
<div class="ttc" id="aclass_d_e_l_l_factory_html_ac07df15cbb5cbe9ca83fb562dd8990aa"><div class="ttname"><a href="class_d_e_l_l_factory.html#ac07df15cbb5cbe9ca83fb562dd8990aa">DELLFactory::CreateMonitor</a></div><div class="ttdeci">virtual Monitor * CreateMonitor()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00254">DESIGNPATTERN_AbstractFactory.cpp:254</a></div></div>
<div class="ttc" id="aclass_h_p_factory_html_abe96d21b7447058a0c86063376c960d6"><div class="ttname"><a href="class_h_p_factory.html#abe96d21b7447058a0c86063376c960d6">HPFactory::operator=</a></div><div class="ttdeci">HPFactory &amp; operator=(const HPFactory &amp;cHPFactory)</div></div>
<div class="ttc" id="aclass_a_s_u_s_factory_html_aa42c2225f44f799055b20c9ab6096b1d"><div class="ttname"><a href="class_a_s_u_s_factory.html#aa42c2225f44f799055b20c9ab6096b1d">ASUSFactory::m_pInstance</a></div><div class="ttdeci">static ASUSFactory * m_pInstance</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8h_source.html#l00321">DESIGNPATTERN_AbstractFactory.h:321</a></div></div>
<div class="ttc" id="aclass_a_s_u_s_factory_html_a84beb96edd3ce08bc17adfa1947e0c2e"><div class="ttname"><a href="class_a_s_u_s_factory.html#a84beb96edd3ce08bc17adfa1947e0c2e">ASUSFactory::CreateMouse</a></div><div class="ttdeci">virtual Mouse * CreateMouse()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00343">DESIGNPATTERN_AbstractFactory.cpp:343</a></div></div>
<div class="ttc" id="aclass_a_s_u_s_factory_html_a40d4d2d557b0cf3b70ada2cd2276266d"><div class="ttname"><a href="class_a_s_u_s_factory.html#a40d4d2d557b0cf3b70ada2cd2276266d">ASUSFactory::Instance</a></div><div class="ttdeci">static AbstractFactory * Instance()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00308">DESIGNPATTERN_AbstractFactory.cpp:308</a></div></div>
<div class="ttc" id="aclass_m_i_x_factory_html_a635c8bd61ec834e93bece151a160cd1f"><div class="ttname"><a href="class_m_i_x_factory.html#a635c8bd61ec834e93bece151a160cd1f">MIXFactory::CreateKeyboard</a></div><div class="ttdeci">virtual Keyboard * CreateKeyboard()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00589">DESIGNPATTERN_AbstractFactory.cpp:589</a></div></div>
<div class="ttc" id="a_product_def_8h_html"><div class="ttname"><a href="_product_def_8h.html">ProductDef.h</a></div></div>
<div class="ttc" id="aclass_d_e_l_l_factory_html_ac0df7222cef55d944d019094e7ef1f0f"><div class="ttname"><a href="class_d_e_l_l_factory.html#ac0df7222cef55d944d019094e7ef1f0f">DELLFactory::~DELLFactory</a></div><div class="ttdeci">virtual ~DELLFactory()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00178">DESIGNPATTERN_AbstractFactory.cpp:178</a></div></div>
<div class="ttc" id="aclass_host_html"><div class="ttname"><a href="class_host.html">Host</a></div><div class="ttdef"><b>Definition:</b> <a href="_host_8h_source.html#l00012">Host.h:12</a></div></div>
<div class="ttc" id="aclass_abstract_factory_html_aa10a0fd3ef457c7b9397c0a2001d86d4"><div class="ttname"><a href="class_abstract_factory.html#aa10a0fd3ef457c7b9397c0a2001d86d4">AbstractFactory::CreateKeyboard</a></div><div class="ttdeci">virtual Keyboard * CreateKeyboard()=0</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00095">DESIGNPATTERN_AbstractFactory.cpp:95</a></div></div>
<div class="ttc" id="a_my_self_def_8h_html_a7927e087749615dae3114cc27b91c86d"><div class="ttname"><a href="_my_self_def_8h.html#a7927e087749615dae3114cc27b91c86d">VOID</a></div><div class="ttdeci">void VOID</div><div class="ttdef"><b>Definition:</b> <a href="_my_self_def_8h_source.html#l00011">MySelfDef.h:11</a></div></div>
<div class="ttc" id="aclass_a_s_u_s_factory_html_ab52cf7f9d7018605315572dbdba85664"><div class="ttname"><a href="class_a_s_u_s_factory.html#ab52cf7f9d7018605315572dbdba85664">ASUSFactory::CreateMonitor</a></div><div class="ttdeci">virtual Monitor * CreateMonitor()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00371">DESIGNPATTERN_AbstractFactory.cpp:371</a></div></div>
<div class="ttc" id="aclass_m_i_x_factory_html_a7287959244040d5487864a6f3b128a0c"><div class="ttname"><a href="class_m_i_x_factory.html#a7287959244040d5487864a6f3b128a0c">MIXFactory::Destroy</a></div><div class="ttdeci">static VOID Destroy()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00558">DESIGNPATTERN_AbstractFactory.cpp:558</a></div></div>
<div class="ttc" id="aclass_a_s_u_s_factory_html_a5be756a45a3c95d9cd04675835158808"><div class="ttname"><a href="class_a_s_u_s_factory.html#a5be756a45a3c95d9cd04675835158808">ASUSFactory::CreateKeyboard</a></div><div class="ttdeci">virtual Keyboard * CreateKeyboard()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00357">DESIGNPATTERN_AbstractFactory.cpp:357</a></div></div>
<div class="ttc" id="aclass_m_i_x_factory_html"><div class="ttname"><a href="class_m_i_x_factory.html">MIXFactory</a></div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8h_source.html#l00421">DESIGNPATTERN_AbstractFactory.h:421</a></div></div>
<div class="ttc" id="aclass_a_s_u_s_factory_html"><div class="ttname"><a href="class_a_s_u_s_factory.html">ASUSFactory</a></div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8h_source.html#l00228">DESIGNPATTERN_AbstractFactory.h:228</a></div></div>
<div class="ttc" id="aclass_a_s_u_s_factory_html_aa42cc378e84fcad9b2753f970d8c4982"><div class="ttname"><a href="class_a_s_u_s_factory.html#aa42cc378e84fcad9b2753f970d8c4982">ASUSFactory::operator=</a></div><div class="ttdeci">ASUSFactory &amp; operator=(const ASUSFactory &amp;cASUSFactory)</div></div>
<div class="ttc" id="aclass_d_e_l_l_factory_html_a72e77d1aaa0d225e28075d43dde267f1"><div class="ttname"><a href="class_d_e_l_l_factory.html#a72e77d1aaa0d225e28075d43dde267f1">DELLFactory::CreateMouse</a></div><div class="ttdeci">virtual Mouse * CreateMouse()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00226">DESIGNPATTERN_AbstractFactory.cpp:226</a></div></div>
<div class="ttc" id="aclass_abstract_factory_html_a2fbbcbd545174c97cb300b82856d6171"><div class="ttname"><a href="class_abstract_factory.html#a2fbbcbd545174c97cb300b82856d6171">AbstractFactory::AbstractFactory</a></div><div class="ttdeci">AbstractFactory()</div></div>
<div class="ttc" id="aclass_h_p_factory_html_a80fbd39a723cf8a0fde9230a77d61bda"><div class="ttname"><a href="class_h_p_factory.html#a80fbd39a723cf8a0fde9230a77d61bda">HPFactory::Destroy</a></div><div class="ttdeci">static VOID Destroy()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00443">DESIGNPATTERN_AbstractFactory.cpp:443</a></div></div>
<div class="ttc" id="aclass_m_i_x_factory_html_a29e3bbdac8fd03a6edf21d2490b976d6"><div class="ttname"><a href="class_m_i_x_factory.html#a29e3bbdac8fd03a6edf21d2490b976d6">MIXFactory::~MIXFactory</a></div><div class="ttdeci">virtual ~MIXFactory()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00527">DESIGNPATTERN_AbstractFactory.cpp:527</a></div></div>
<div class="ttc" id="aclass_a_s_u_s_factory_html_a3afbba7db45485c3fc34d7ea72708451"><div class="ttname"><a href="class_a_s_u_s_factory.html#a3afbba7db45485c3fc34d7ea72708451">ASUSFactory::CreateHost</a></div><div class="ttdeci">virtual Host * CreateHost()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00385">DESIGNPATTERN_AbstractFactory.cpp:385</a></div></div>
<div class="ttc" id="aclass_m_i_x_factory_html_ac12eb26d5bd2e9254ce040ca01b8689f"><div class="ttname"><a href="class_m_i_x_factory.html#ac12eb26d5bd2e9254ce040ca01b8689f">MIXFactory::MIXFactory</a></div><div class="ttdeci">MIXFactory()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00515">DESIGNPATTERN_AbstractFactory.cpp:515</a></div></div>
<div class="ttc" id="aclass_a_s_u_s_factory_html_a1003f1376fc12d39500abcefea96b112"><div class="ttname"><a href="class_a_s_u_s_factory.html#a1003f1376fc12d39500abcefea96b112">ASUSFactory::ASUSFactory</a></div><div class="ttdeci">ASUSFactory()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00283">DESIGNPATTERN_AbstractFactory.cpp:283</a></div></div>
<div class="ttc" id="aclass_d_e_l_l_factory_html_ad1db42662c007f76f40b6a8ccfb644d7"><div class="ttname"><a href="class_d_e_l_l_factory.html#ad1db42662c007f76f40b6a8ccfb644d7">DELLFactory::m_pInstance</a></div><div class="ttdeci">static DELLFactory * m_pInstance</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8h_source.html#l00225">DESIGNPATTERN_AbstractFactory.h:225</a></div></div>
<div class="ttc" id="aclass_abstract_factory_html"><div class="ttname"><a href="class_abstract_factory.html">AbstractFactory</a></div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8h_source.html#l00020">DESIGNPATTERN_AbstractFactory.h:20</a></div></div>
<div class="ttc" id="aclass_m_i_x_factory_html_af1809112b68306569cb752532faebfb4"><div class="ttname"><a href="class_m_i_x_factory.html#af1809112b68306569cb752532faebfb4">MIXFactory::CreateMouse</a></div><div class="ttdeci">virtual Mouse * CreateMouse()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00575">DESIGNPATTERN_AbstractFactory.cpp:575</a></div></div>
<div class="ttc" id="aclass_abstract_factory_html_aed400af527dfb1fd42eb320f21aae14d"><div class="ttname"><a href="class_abstract_factory.html#aed400af527dfb1fd42eb320f21aae14d">AbstractFactory::operator=</a></div><div class="ttdeci">AbstractFactory &amp; operator=(const AbstractFactory &amp;cAbstractFactory)</div></div>
<div class="ttc" id="aclass_monitor_html"><div class="ttname"><a href="class_monitor.html">Monitor</a></div><div class="ttdef"><b>Definition:</b> <a href="_monitor_8h_source.html#l00012">Monitor.h:12</a></div></div>
<div class="ttc" id="aclass_m_i_x_factory_html_a50b1452a9ef800994ce47b2d43759698"><div class="ttname"><a href="class_m_i_x_factory.html#a50b1452a9ef800994ce47b2d43759698">MIXFactory::CreateMonitor</a></div><div class="ttdeci">virtual Monitor * CreateMonitor()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00603">DESIGNPATTERN_AbstractFactory.cpp:603</a></div></div>
<div class="ttc" id="aclass_d_e_l_l_factory_html_a5fd7565cc00d0f42efcc908147a53af1"><div class="ttname"><a href="class_d_e_l_l_factory.html#a5fd7565cc00d0f42efcc908147a53af1">DELLFactory::operator=</a></div><div class="ttdeci">DELLFactory &amp; operator=(const DELLFactory &amp;cDELLFactory)</div></div>
<div class="ttc" id="aclass_h_p_factory_html"><div class="ttname"><a href="class_h_p_factory.html">HPFactory</a></div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8h_source.html#l00325">DESIGNPATTERN_AbstractFactory.h:325</a></div></div>
<div class="ttc" id="aclass_h_p_factory_html_a39f9cb8ec3ad9d00fdc077db09cbc180"><div class="ttname"><a href="class_h_p_factory.html#a39f9cb8ec3ad9d00fdc077db09cbc180">HPFactory::~HPFactory</a></div><div class="ttdeci">virtual ~HPFactory()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00412">DESIGNPATTERN_AbstractFactory.cpp:412</a></div></div>
<div class="ttc" id="aclass_h_p_factory_html_a28d0bfdbd9be99e66fc0f7f7f5b20d49"><div class="ttname"><a href="class_h_p_factory.html#a28d0bfdbd9be99e66fc0f7f7f5b20d49">HPFactory::CreateMouse</a></div><div class="ttdeci">virtual Mouse * CreateMouse()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00460">DESIGNPATTERN_AbstractFactory.cpp:460</a></div></div>
<div class="ttc" id="aclass_abstract_factory_html_af8b5aab716692ea2c55c1fd7dff74b05"><div class="ttname"><a href="class_abstract_factory.html#af8b5aab716692ea2c55c1fd7dff74b05">AbstractFactory::m_eManufacturer</a></div><div class="ttdeci">MANUFACTURER_TYPE m_eManufacturer</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8h_source.html#l00128">DESIGNPATTERN_AbstractFactory.h:128</a></div></div>
<div class="ttc" id="aclass_abstract_factory_html_ab988a1ff535f4c2f0ea6bd3cfe418745"><div class="ttname"><a href="class_abstract_factory.html#ab988a1ff535f4c2f0ea6bd3cfe418745">AbstractFactory::CreateMouse</a></div><div class="ttdeci">virtual Mouse * CreateMouse()=0</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00080">DESIGNPATTERN_AbstractFactory.cpp:80</a></div></div>
<div class="ttc" id="aclass_abstract_factory_html_a5f87d3ac2fdef80bd009e26b7130e5fb"><div class="ttname"><a href="class_abstract_factory.html#a5f87d3ac2fdef80bd009e26b7130e5fb">AbstractFactory::CreateHost</a></div><div class="ttdeci">virtual Host * CreateHost()=0</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00125">DESIGNPATTERN_AbstractFactory.cpp:125</a></div></div>
<div class="ttc" id="aclass_h_p_factory_html_ab9ae1470b9ed1fac365b75d4826abd0d"><div class="ttname"><a href="class_h_p_factory.html#ab9ae1470b9ed1fac365b75d4826abd0d">HPFactory::CreateHost</a></div><div class="ttdeci">virtual Host * CreateHost()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00502">DESIGNPATTERN_AbstractFactory.cpp:502</a></div></div>
<div class="ttc" id="aclass_d_e_l_l_factory_html_af8a559cf419e20c08838bb2a9f982f2d"><div class="ttname"><a href="class_d_e_l_l_factory.html#af8a559cf419e20c08838bb2a9f982f2d">DELLFactory::CreateKeyboard</a></div><div class="ttdeci">virtual Keyboard * CreateKeyboard()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00240">DESIGNPATTERN_AbstractFactory.cpp:240</a></div></div>
<div class="ttc" id="aclass_d_e_l_l_factory_html_ac510d06fe6719e6562f3b93cf735fcb0"><div class="ttname"><a href="class_d_e_l_l_factory.html#ac510d06fe6719e6562f3b93cf735fcb0">DELLFactory::DELLFactory</a></div><div class="ttdeci">DELLFactory()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00166">DESIGNPATTERN_AbstractFactory.cpp:166</a></div></div>
<div class="ttc" id="aclass_abstract_factory_html_a0ce427e8246baff926f0945d370bb419"><div class="ttname"><a href="class_abstract_factory.html#a0ce427e8246baff926f0945d370bb419">AbstractFactory::~AbstractFactory</a></div><div class="ttdeci">virtual ~AbstractFactory()=0</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00052">DESIGNPATTERN_AbstractFactory.cpp:52</a></div></div>
<div class="ttc" id="aclass_d_e_l_l_factory_html_a022482e7d119e327ae6df91e6dbd8ed9"><div class="ttname"><a href="class_d_e_l_l_factory.html#a022482e7d119e327ae6df91e6dbd8ed9">DELLFactory::CreateHost</a></div><div class="ttdeci">virtual Host * CreateHost()</div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8cpp_source.html#l00268">DESIGNPATTERN_AbstractFactory.cpp:268</a></div></div>
<div class="ttc" id="aclass_keyboard_html"><div class="ttname"><a href="class_keyboard.html">Keyboard</a></div><div class="ttdef"><b>Definition:</b> <a href="_keyboard_8h_source.html#l00012">Keyboard.h:12</a></div></div>
<div class="ttc" id="aclass_d_e_l_l_factory_html"><div class="ttname"><a href="class_d_e_l_l_factory.html">DELLFactory</a></div><div class="ttdef"><b>Definition:</b> <a href="_d_e_s_i_g_n_p_a_t_t_e_r_n___abstract_factory_8h_source.html#l00131">DESIGNPATTERN_AbstractFactory.h:131</a></div></div>
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.16
</small></address>
</body>
</html>
